#include <stdio.h>
#include <stdlib.h>
#include "externdef.h"
#include "../macro.h"


int main(int argc, char *argv[]) {
  int c,nbtest=0;


  EXIT_ON_ERROR(testTranspose_fgUINT8);
  EXIT_ON_ERROR(testTranspose_fgUINT16);
  EXIT_ON_ERROR(testTranspose_fgUINT32);
  EXIT_ON_ERROR(testTranspose_fgINT8);
  EXIT_ON_ERROR(testTranspose_fgINT16);
  EXIT_ON_ERROR(testTranspose_fgINT32);
  EXIT_ON_ERROR(testTranspose_fgFLOAT32);
  EXIT_ON_ERROR(testTranspose_fgFLOAT64);
  EXIT_ON_ERROR(testTranspose_fgBIT);
  printf("\n");

  EXIT_ON_ERROR(testgeometry1d_line_fgBIT);
  EXIT_ON_ERROR(testgeometry1d_line_fgUINT8);
  EXIT_ON_ERROR(testgeometry1d_line_fgUINT16);
  EXIT_ON_ERROR(testgeometry1d_line_fgUINT32);
  EXIT_ON_ERROR(testgeometry1d_line_fgINT8);
  EXIT_ON_ERROR(testgeometry1d_line_fgINT16);
  EXIT_ON_ERROR(testgeometry1d_line_fgINT32);
  EXIT_ON_ERROR(testgeometry1d_line_fgFLOAT32);
  EXIT_ON_ERROR(testgeometry1d_line_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testgeometry1d_spp3_line_fgBIT);
  EXIT_ON_ERROR(testgeometry1d_spp3_line_fgUINT8);
  EXIT_ON_ERROR(testgeometry1d_spp3_line_fgUINT16);
  EXIT_ON_ERROR(testgeometry1d_spp3_line_fgUINT32);
  EXIT_ON_ERROR(testgeometry1d_spp3_line_fgINT8);
  EXIT_ON_ERROR(testgeometry1d_spp3_line_fgINT16);
  EXIT_ON_ERROR(testgeometry1d_spp3_line_fgINT32);
  EXIT_ON_ERROR(testgeometry1d_spp3_line_fgFLOAT32);
  EXIT_ON_ERROR(testgeometry1d_spp3_line_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testgeometry_point_fgBIT);
  EXIT_ON_ERROR(testgeometry_point_fgUINT8);
  EXIT_ON_ERROR(testgeometry_point_fgUINT16);
  EXIT_ON_ERROR(testgeometry_point_fgUINT32);
  EXIT_ON_ERROR(testgeometry_point_fgINT8);
  EXIT_ON_ERROR(testgeometry_point_fgINT16);
  EXIT_ON_ERROR(testgeometry_point_fgINT32);
  EXIT_ON_ERROR(testgeometry_point_fgFLOAT32);
  EXIT_ON_ERROR(testgeometry_point_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testgeometry_point_spp2_fgBIT);
  EXIT_ON_ERROR(testgeometry_point_spp2_fgUINT8);
  EXIT_ON_ERROR(testgeometry_point_spp2_fgUINT16);
  EXIT_ON_ERROR(testgeometry_point_spp2_fgUINT32);
  EXIT_ON_ERROR(testgeometry_point_spp2_fgINT8);
  EXIT_ON_ERROR(testgeometry_point_spp2_fgINT16);
  EXIT_ON_ERROR(testgeometry_point_spp2_fgINT32);
  EXIT_ON_ERROR(testgeometry_point_spp2_fgFLOAT32);
  EXIT_ON_ERROR(testgeometry_point_spp2_fgFLOAT64);
  printf("\n");


  EXIT_ON_ERROR(testgeometry_horizontal_line_fgBIT);
  EXIT_ON_ERROR(testgeometry_horizontal_line_fgUINT8);
  EXIT_ON_ERROR(testgeometry_horizontal_line_fgUINT16);
  EXIT_ON_ERROR(testgeometry_horizontal_line_fgUINT32);
  EXIT_ON_ERROR(testgeometry_horizontal_line_fgINT8);
  EXIT_ON_ERROR(testgeometry_horizontal_line_fgINT16);
  EXIT_ON_ERROR(testgeometry_horizontal_line_fgINT32);
  EXIT_ON_ERROR(testgeometry_horizontal_line_fgFLOAT32);
  EXIT_ON_ERROR(testgeometry_horizontal_line_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testgeometry_vertical_line_fgBIT);
  EXIT_ON_ERROR(testgeometry_vertical_line_fgUINT8);
  EXIT_ON_ERROR(testgeometry_vertical_line_fgUINT16);
  EXIT_ON_ERROR(testgeometry_vertical_line_fgUINT32);
  EXIT_ON_ERROR(testgeometry_vertical_line_fgINT8);
  EXIT_ON_ERROR(testgeometry_vertical_line_fgINT16);
  EXIT_ON_ERROR(testgeometry_vertical_line_fgINT32);
  EXIT_ON_ERROR(testgeometry_vertical_line_fgFLOAT32);
  EXIT_ON_ERROR(testgeometry_vertical_line_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testgeometry_line_fgBIT);
  EXIT_ON_ERROR(testgeometry_line_fgUINT8);
  EXIT_ON_ERROR(testgeometry_line_fgUINT16);
  EXIT_ON_ERROR(testgeometry_line_fgUINT32);
  EXIT_ON_ERROR(testgeometry_line_fgINT8);
  EXIT_ON_ERROR(testgeometry_line_fgINT16);
  EXIT_ON_ERROR(testgeometry_line_fgINT32);
  EXIT_ON_ERROR(testgeometry_line_fgFLOAT32);
  EXIT_ON_ERROR(testgeometry_line_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testgeometry_rectangle_fgBIT);
  EXIT_ON_ERROR(testgeometry_rectangle_fgUINT8);
  EXIT_ON_ERROR(testgeometry_rectangle_fgUINT16);
  EXIT_ON_ERROR(testgeometry_rectangle_fgUINT32);
  EXIT_ON_ERROR(testgeometry_rectangle_fgINT8);
  EXIT_ON_ERROR(testgeometry_rectangle_fgINT16);
  EXIT_ON_ERROR(testgeometry_rectangle_fgINT32);
  EXIT_ON_ERROR(testgeometry_rectangle_fgFLOAT32);
  EXIT_ON_ERROR(testgeometry_rectangle_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testgeometry_filled_rectangle_fgBIT);
  EXIT_ON_ERROR(testgeometry_filled_rectangle_fgUINT8);
  EXIT_ON_ERROR(testgeometry_filled_rectangle_fgUINT16);
  EXIT_ON_ERROR(testgeometry_filled_rectangle_fgUINT32);
  EXIT_ON_ERROR(testgeometry_filled_rectangle_fgINT8);
  EXIT_ON_ERROR(testgeometry_filled_rectangle_fgINT16);
  EXIT_ON_ERROR(testgeometry_filled_rectangle_fgINT32);
  EXIT_ON_ERROR(testgeometry_filled_rectangle_fgFLOAT32);
  EXIT_ON_ERROR(testgeometry_filled_rectangle_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testgeometry_circle_fgBIT);
  EXIT_ON_ERROR(testgeometry_circle_fgUINT8);
  EXIT_ON_ERROR(testgeometry_circle_fgUINT16);
  EXIT_ON_ERROR(testgeometry_circle_fgUINT32);
  EXIT_ON_ERROR(testgeometry_circle_fgINT8);
  EXIT_ON_ERROR(testgeometry_circle_fgINT16);
  EXIT_ON_ERROR(testgeometry_circle_fgINT32);
  EXIT_ON_ERROR(testgeometry_circle_fgFLOAT32);
  EXIT_ON_ERROR(testgeometry_circle_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testgeometry_disc_fgBIT);
  EXIT_ON_ERROR(testgeometry_disc_fgUINT8);
  EXIT_ON_ERROR(testgeometry_disc_fgUINT16);
  EXIT_ON_ERROR(testgeometry_disc_fgUINT32);
  EXIT_ON_ERROR(testgeometry_disc_fgINT8);
  EXIT_ON_ERROR(testgeometry_disc_fgINT16);
  EXIT_ON_ERROR(testgeometry_disc_fgINT32);
  EXIT_ON_ERROR(testgeometry_disc_fgFLOAT32);
  EXIT_ON_ERROR(testgeometry_disc_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testgeometry_disc_spp9_fgBIT);
  EXIT_ON_ERROR(testgeometry_disc_spp9_fgUINT8);
  EXIT_ON_ERROR(testgeometry_disc_spp9_fgUINT16);
  EXIT_ON_ERROR(testgeometry_disc_spp9_fgUINT32);
  EXIT_ON_ERROR(testgeometry_disc_spp9_fgINT8);
  EXIT_ON_ERROR(testgeometry_disc_spp9_fgINT16);
  EXIT_ON_ERROR(testgeometry_disc_spp9_fgINT32);
  EXIT_ON_ERROR(testgeometry_disc_spp9_fgFLOAT32);
  EXIT_ON_ERROR(testgeometry_disc_spp9_fgFLOAT64);
  printf("\n");


  EXIT_ON_ERROR(testcompare1d_infeq_I_I_fgUINT8);
  EXIT_ON_ERROR(testcompare1d_infeq_I_I_fgUINT16);
  EXIT_ON_ERROR(testcompare1d_infeq_I_I_fgUINT32);
  EXIT_ON_ERROR(testcompare1d_infeq_I_I_fgINT8);
  EXIT_ON_ERROR(testcompare1d_infeq_I_I_fgINT16);
  EXIT_ON_ERROR(testcompare1d_infeq_I_I_fgINT32);
  EXIT_ON_ERROR(testcompare1d_infeq_I_I_fgFLOAT32);
  EXIT_ON_ERROR(testcompare1d_infeq_I_I_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testcompare1d_supeq_I_I_fgUINT8);
  EXIT_ON_ERROR(testcompare1d_supeq_I_I_fgUINT16);
  EXIT_ON_ERROR(testcompare1d_supeq_I_I_fgUINT32);
  EXIT_ON_ERROR(testcompare1d_supeq_I_I_fgINT8);
  EXIT_ON_ERROR(testcompare1d_supeq_I_I_fgINT16);
  EXIT_ON_ERROR(testcompare1d_supeq_I_I_fgINT32);
  EXIT_ON_ERROR(testcompare1d_supeq_I_I_fgFLOAT32);
  EXIT_ON_ERROR(testcompare1d_supeq_I_I_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testcompare1d_inf_I_I_fgUINT8);
  EXIT_ON_ERROR(testcompare1d_inf_I_I_fgUINT16);
  EXIT_ON_ERROR(testcompare1d_inf_I_I_fgUINT32);
  EXIT_ON_ERROR(testcompare1d_inf_I_I_fgINT8);
  EXIT_ON_ERROR(testcompare1d_inf_I_I_fgINT16);
  EXIT_ON_ERROR(testcompare1d_inf_I_I_fgINT32);
  EXIT_ON_ERROR(testcompare1d_inf_I_I_fgFLOAT32);
  EXIT_ON_ERROR(testcompare1d_inf_I_I_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testcompare1d_sup_I_I_fgUINT8);
  EXIT_ON_ERROR(testcompare1d_sup_I_I_fgUINT16);
  EXIT_ON_ERROR(testcompare1d_sup_I_I_fgUINT32);
  EXIT_ON_ERROR(testcompare1d_sup_I_I_fgINT8);
  EXIT_ON_ERROR(testcompare1d_sup_I_I_fgINT16);
  EXIT_ON_ERROR(testcompare1d_sup_I_I_fgINT32);
  EXIT_ON_ERROR(testcompare1d_sup_I_I_fgFLOAT32);
  EXIT_ON_ERROR(testcompare1d_sup_I_I_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testcompare1d_diff_I_I_fgUINT8);
  EXIT_ON_ERROR(testcompare1d_diff_I_I_fgUINT16);
  EXIT_ON_ERROR(testcompare1d_diff_I_I_fgUINT32);
  EXIT_ON_ERROR(testcompare1d_diff_I_I_fgINT8);
  EXIT_ON_ERROR(testcompare1d_diff_I_I_fgINT16);
  EXIT_ON_ERROR(testcompare1d_diff_I_I_fgINT32);
  EXIT_ON_ERROR(testcompare1d_diff_I_I_fgFLOAT32);
  EXIT_ON_ERROR(testcompare1d_diff_I_I_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testcompare1d_equal_I_I_fgUINT8);
  EXIT_ON_ERROR(testcompare1d_equal_I_I_fgUINT16);
  EXIT_ON_ERROR(testcompare1d_equal_I_I_fgUINT32);
  EXIT_ON_ERROR(testcompare1d_equal_I_I_fgINT8);
  EXIT_ON_ERROR(testcompare1d_equal_I_I_fgINT16);
  EXIT_ON_ERROR(testcompare1d_equal_I_I_fgINT32);
  EXIT_ON_ERROR(testcompare1d_equal_I_I_fgFLOAT32);
  EXIT_ON_ERROR(testcompare1d_equal_I_I_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testcompare1d_equal_spp8_I_I_fgUINT8);
  EXIT_ON_ERROR(testcompare1d_equal_spp8_I_I_fgUINT16);
  EXIT_ON_ERROR(testcompare1d_equal_spp8_I_I_fgUINT32);
  EXIT_ON_ERROR(testcompare1d_equal_spp8_I_I_fgINT8);
  EXIT_ON_ERROR(testcompare1d_equal_spp8_I_I_fgINT16);
  EXIT_ON_ERROR(testcompare1d_equal_spp8_I_I_fgINT32);
  EXIT_ON_ERROR(testcompare1d_equal_spp8_I_I_fgFLOAT32);
  EXIT_ON_ERROR(testcompare1d_equal_spp8_I_I_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testcompare2d_equal_I_I_fgUINT8);
  EXIT_ON_ERROR(testcompare2d_equal_I_I_fgUINT16);
  EXIT_ON_ERROR(testcompare2d_equal_I_I_fgUINT32);
  EXIT_ON_ERROR(testcompare2d_equal_I_I_fgINT8);
  EXIT_ON_ERROR(testcompare2d_equal_I_I_fgINT16);
  EXIT_ON_ERROR(testcompare2d_equal_I_I_fgINT32);
  EXIT_ON_ERROR(testcompare2d_equal_I_I_fgFLOAT32);
  EXIT_ON_ERROR(testcompare2d_equal_I_I_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testcompare2d_diff_I_I_fgUINT8);
  EXIT_ON_ERROR(testcompare2d_diff_I_I_fgUINT16);
  EXIT_ON_ERROR(testcompare2d_diff_I_I_fgUINT32);
  EXIT_ON_ERROR(testcompare2d_diff_I_I_fgINT8);
  EXIT_ON_ERROR(testcompare2d_diff_I_I_fgINT16);
  EXIT_ON_ERROR(testcompare2d_diff_I_I_fgINT32);
  EXIT_ON_ERROR(testcompare2d_diff_I_I_fgFLOAT32);
  EXIT_ON_ERROR(testcompare2d_diff_I_I_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testcompare2d_great_eq_I_I_fgUINT8);
  EXIT_ON_ERROR(testcompare2d_great_eq_I_I_fgUINT16);
  EXIT_ON_ERROR(testcompare2d_great_eq_I_I_fgUINT32);
  EXIT_ON_ERROR(testcompare2d_great_eq_I_I_fgINT8);
  EXIT_ON_ERROR(testcompare2d_great_eq_I_I_fgINT16);
  EXIT_ON_ERROR(testcompare2d_great_eq_I_I_fgINT32);
  EXIT_ON_ERROR(testcompare2d_great_eq_I_I_fgFLOAT32);
  EXIT_ON_ERROR(testcompare2d_great_eq_I_I_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testcompare2d_great_I_I_fgUINT8);
  EXIT_ON_ERROR(testcompare2d_great_I_I_fgUINT16);
  EXIT_ON_ERROR(testcompare2d_great_I_I_fgUINT32);
  EXIT_ON_ERROR(testcompare2d_great_I_I_fgINT8);
  EXIT_ON_ERROR(testcompare2d_great_I_I_fgINT16);
  EXIT_ON_ERROR(testcompare2d_great_I_I_fgINT32);
  EXIT_ON_ERROR(testcompare2d_great_I_I_fgFLOAT32);
  EXIT_ON_ERROR(testcompare2d_great_I_I_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testcompare2d_less_eq_I_I_fgUINT8);
  EXIT_ON_ERROR(testcompare2d_less_eq_I_I_fgUINT16);
  EXIT_ON_ERROR(testcompare2d_less_eq_I_I_fgUINT32);
  EXIT_ON_ERROR(testcompare2d_less_eq_I_I_fgINT8);
  EXIT_ON_ERROR(testcompare2d_less_eq_I_I_fgINT16);
  EXIT_ON_ERROR(testcompare2d_less_eq_I_I_fgINT32);
  EXIT_ON_ERROR(testcompare2d_less_eq_I_I_fgFLOAT32);
  EXIT_ON_ERROR(testcompare2d_less_eq_I_I_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testcompare2d_less_I_I_fgUINT8);
  EXIT_ON_ERROR(testcompare2d_less_I_I_fgUINT16);
  EXIT_ON_ERROR(testcompare2d_less_I_I_fgUINT32);
  EXIT_ON_ERROR(testcompare2d_less_I_I_fgINT8);
  EXIT_ON_ERROR(testcompare2d_less_I_I_fgINT16);
  EXIT_ON_ERROR(testcompare2d_less_I_I_fgINT32);
  EXIT_ON_ERROR(testcompare2d_less_I_I_fgFLOAT32);
  EXIT_ON_ERROR(testcompare2d_less_I_I_fgFLOAT64);
  printf("\n");


  EXIT_ON_ERROR(testcompare2d_equal_I_C_fgUINT8);
  EXIT_ON_ERROR(testcompare2d_equal_I_C_fgUINT16);
  EXIT_ON_ERROR(testcompare2d_equal_I_C_fgUINT32);
  EXIT_ON_ERROR(testcompare2d_equal_I_C_fgINT8);
  EXIT_ON_ERROR(testcompare2d_equal_I_C_fgINT16);
  EXIT_ON_ERROR(testcompare2d_equal_I_C_fgINT32);
  EXIT_ON_ERROR(testcompare2d_equal_I_C_fgFLOAT32);
  EXIT_ON_ERROR(testcompare2d_equal_I_C_fgFLOAT64);
  printf("\n");


  EXIT_ON_ERROR(testcompare2d_diff_I_C_fgUINT8);
  EXIT_ON_ERROR(testcompare2d_diff_I_C_fgUINT16);
  EXIT_ON_ERROR(testcompare2d_diff_I_C_fgUINT32);
  EXIT_ON_ERROR(testcompare2d_diff_I_C_fgINT8);
  EXIT_ON_ERROR(testcompare2d_diff_I_C_fgINT16);
  EXIT_ON_ERROR(testcompare2d_diff_I_C_fgINT32);
  EXIT_ON_ERROR(testcompare2d_diff_I_C_fgFLOAT32);
  EXIT_ON_ERROR(testcompare2d_diff_I_C_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testcompare2d_great_eq_I_C_fgUINT8);
  EXIT_ON_ERROR(testcompare2d_great_eq_I_C_fgUINT16);
  EXIT_ON_ERROR(testcompare2d_great_eq_I_C_fgUINT32);
  EXIT_ON_ERROR(testcompare2d_great_eq_I_C_fgINT8);
  EXIT_ON_ERROR(testcompare2d_great_eq_I_C_fgINT16);
  EXIT_ON_ERROR(testcompare2d_great_eq_I_C_fgINT32);
  EXIT_ON_ERROR(testcompare2d_great_eq_I_C_fgFLOAT32);
  EXIT_ON_ERROR(testcompare2d_great_eq_I_C_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testcompare2d_less_eq_I_C_fgUINT8);
  EXIT_ON_ERROR(testcompare2d_less_eq_I_C_fgUINT16);
  EXIT_ON_ERROR(testcompare2d_less_eq_I_C_fgUINT32);
  EXIT_ON_ERROR(testcompare2d_less_eq_I_C_fgINT8);
  EXIT_ON_ERROR(testcompare2d_less_eq_I_C_fgINT16);
  EXIT_ON_ERROR(testcompare2d_less_eq_I_C_fgINT32);
  EXIT_ON_ERROR(testcompare2d_less_eq_I_C_fgFLOAT32);
  EXIT_ON_ERROR(testcompare2d_less_eq_I_C_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testcompare2d_great_I_C_fgUINT8);
  EXIT_ON_ERROR(testcompare2d_great_I_C_fgUINT16);
  EXIT_ON_ERROR(testcompare2d_great_I_C_fgUINT32);
  EXIT_ON_ERROR(testcompare2d_great_I_C_fgINT8);
  EXIT_ON_ERROR(testcompare2d_great_I_C_fgINT16);
  EXIT_ON_ERROR(testcompare2d_great_I_C_fgINT32);
  EXIT_ON_ERROR(testcompare2d_great_I_C_fgFLOAT32);
  EXIT_ON_ERROR(testcompare2d_great_I_C_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testcompare2d_less_I_C_fgUINT8);
  EXIT_ON_ERROR(testcompare2d_less_I_C_fgUINT16);
  EXIT_ON_ERROR(testcompare2d_less_I_C_fgUINT32);
  EXIT_ON_ERROR(testcompare2d_less_I_C_fgINT8);
  EXIT_ON_ERROR(testcompare2d_less_I_C_fgINT16);
  EXIT_ON_ERROR(testcompare2d_less_I_C_fgINT32);
  EXIT_ON_ERROR(testcompare2d_less_I_C_fgFLOAT32);
  EXIT_ON_ERROR(testcompare2d_less_I_C_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testcompare2d_less_spp2_I_C_fgUINT8);
  EXIT_ON_ERROR(testcompare2d_less_spp2_I_C_fgUINT16);
  EXIT_ON_ERROR(testcompare2d_less_spp2_I_C_fgUINT32);
  EXIT_ON_ERROR(testcompare2d_less_spp2_I_C_fgINT8);
  EXIT_ON_ERROR(testcompare2d_less_spp2_I_C_fgINT16);
  EXIT_ON_ERROR(testcompare2d_less_spp2_I_C_fgINT32);
  EXIT_ON_ERROR(testcompare2d_less_spp2_I_C_fgFLOAT32);
  EXIT_ON_ERROR(testcompare2d_less_spp2_I_C_fgFLOAT64);
  printf("\n");


  EXIT_ON_ERROR(testreplace1d_I_with_I_I_I_fgUINT8);
  EXIT_ON_ERROR(testreplace1d_I_with_I_I_I_fgUINT16);
  EXIT_ON_ERROR(testreplace1d_I_with_I_I_I_fgUINT32);
  EXIT_ON_ERROR(testreplace1d_I_with_I_I_I_fgINT8);
  EXIT_ON_ERROR(testreplace1d_I_with_I_I_I_fgINT16);
  EXIT_ON_ERROR(testreplace1d_I_with_I_I_I_fgINT32);
  EXIT_ON_ERROR(testreplace1d_I_with_I_I_I_fgFLOAT32);
  EXIT_ON_ERROR(testreplace1d_I_with_I_I_I_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testreplace1d_I_with_I_I_C_fgUINT8);
  EXIT_ON_ERROR(testreplace1d_I_with_I_I_C_fgUINT16);
  EXIT_ON_ERROR(testreplace1d_I_with_I_I_C_fgUINT32);
  EXIT_ON_ERROR(testreplace1d_I_with_I_I_C_fgINT8);
  EXIT_ON_ERROR(testreplace1d_I_with_I_I_C_fgINT16);
  EXIT_ON_ERROR(testreplace1d_I_with_I_I_C_fgINT32);
  EXIT_ON_ERROR(testreplace1d_I_with_I_I_C_fgFLOAT32);
  EXIT_ON_ERROR(testreplace1d_I_with_I_I_C_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testreplace1d_spp2_I_with_I_I_C_fgUINT8);
  EXIT_ON_ERROR(testreplace1d_spp2_I_with_I_I_C_fgUINT16);
  EXIT_ON_ERROR(testreplace1d_spp2_I_with_I_I_C_fgUINT32);
  EXIT_ON_ERROR(testreplace1d_spp2_I_with_I_I_C_fgINT8);
  EXIT_ON_ERROR(testreplace1d_spp2_I_with_I_I_C_fgINT16);
  EXIT_ON_ERROR(testreplace1d_spp2_I_with_I_I_C_fgINT32);
  EXIT_ON_ERROR(testreplace1d_spp2_I_with_I_I_C_fgFLOAT32);
  EXIT_ON_ERROR(testreplace1d_spp2_I_with_I_I_C_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testreplace1d_I_with_I_C_I_fgUINT8);
  EXIT_ON_ERROR(testreplace1d_I_with_I_C_I_fgUINT16);
  EXIT_ON_ERROR(testreplace1d_I_with_I_C_I_fgUINT32);
  EXIT_ON_ERROR(testreplace1d_I_with_I_C_I_fgINT8);
  EXIT_ON_ERROR(testreplace1d_I_with_I_C_I_fgINT16);
  EXIT_ON_ERROR(testreplace1d_I_with_I_C_I_fgINT32);
  EXIT_ON_ERROR(testreplace1d_I_with_I_C_I_fgFLOAT32);
  EXIT_ON_ERROR(testreplace1d_I_with_I_C_I_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testreplace1d_I_with_I_C_C_fgUINT8);
  EXIT_ON_ERROR(testreplace1d_I_with_I_C_C_fgUINT16);
  EXIT_ON_ERROR(testreplace1d_I_with_I_C_C_fgUINT32);
  EXIT_ON_ERROR(testreplace1d_I_with_I_C_C_fgINT8);
  EXIT_ON_ERROR(testreplace1d_I_with_I_C_C_fgINT16);
  EXIT_ON_ERROR(testreplace1d_I_with_I_C_C_fgINT32);
  EXIT_ON_ERROR(testreplace1d_I_with_I_C_C_fgFLOAT32);
  EXIT_ON_ERROR(testreplace1d_I_with_I_C_C_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testreplace1d_I_with_C_I_I_fgUINT8);
  EXIT_ON_ERROR(testreplace1d_I_with_C_I_I_fgUINT16);
  EXIT_ON_ERROR(testreplace1d_I_with_C_I_I_fgUINT32);
  EXIT_ON_ERROR(testreplace1d_I_with_C_I_I_fgINT8);
  EXIT_ON_ERROR(testreplace1d_I_with_C_I_I_fgINT16);
  EXIT_ON_ERROR(testreplace1d_I_with_C_I_I_fgINT32);
  EXIT_ON_ERROR(testreplace1d_I_with_C_I_I_fgFLOAT32);
  EXIT_ON_ERROR(testreplace1d_I_with_C_I_I_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testreplace1d_I_with_C_I_C_fgUINT8);
  EXIT_ON_ERROR(testreplace1d_I_with_C_I_C_fgUINT16);
  EXIT_ON_ERROR(testreplace1d_I_with_C_I_C_fgUINT32);
  EXIT_ON_ERROR(testreplace1d_I_with_C_I_C_fgINT8);
  EXIT_ON_ERROR(testreplace1d_I_with_C_I_C_fgINT16);
  EXIT_ON_ERROR(testreplace1d_I_with_C_I_C_fgINT32);
  EXIT_ON_ERROR(testreplace1d_I_with_C_I_C_fgFLOAT32);
  EXIT_ON_ERROR(testreplace1d_I_with_C_I_C_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testreplace1d_I_with_C_C_I_fgUINT8);
  EXIT_ON_ERROR(testreplace1d_I_with_C_C_I_fgUINT16);
  EXIT_ON_ERROR(testreplace1d_I_with_C_C_I_fgUINT32);
  EXIT_ON_ERROR(testreplace1d_I_with_C_C_I_fgINT8);
  EXIT_ON_ERROR(testreplace1d_I_with_C_C_I_fgINT16);
  EXIT_ON_ERROR(testreplace1d_I_with_C_C_I_fgINT32);
  EXIT_ON_ERROR(testreplace1d_I_with_C_C_I_fgFLOAT32);
  EXIT_ON_ERROR(testreplace1d_I_with_C_C_I_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testreplace1d_I_with_C_C_C_fgUINT8);
  EXIT_ON_ERROR(testreplace1d_I_with_C_C_C_fgUINT16);
  EXIT_ON_ERROR(testreplace1d_I_with_C_C_C_fgUINT32);
  EXIT_ON_ERROR(testreplace1d_I_with_C_C_C_fgINT8);
  EXIT_ON_ERROR(testreplace1d_I_with_C_C_C_fgINT16);
  EXIT_ON_ERROR(testreplace1d_I_with_C_C_C_fgINT32);
  EXIT_ON_ERROR(testreplace1d_I_with_C_C_C_fgFLOAT32);
  EXIT_ON_ERROR(testreplace1d_I_with_C_C_C_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testreplace2d_I_with_I_I_I_fgUINT8);
  EXIT_ON_ERROR(testreplace2d_I_with_I_I_I_fgUINT16);
  EXIT_ON_ERROR(testreplace2d_I_with_I_I_I_fgUINT32);
  EXIT_ON_ERROR(testreplace2d_I_with_I_I_I_fgINT8);
  EXIT_ON_ERROR(testreplace2d_I_with_I_I_I_fgINT16);
  EXIT_ON_ERROR(testreplace2d_I_with_I_I_I_fgINT32);
  EXIT_ON_ERROR(testreplace2d_I_with_I_I_I_fgFLOAT32);
  EXIT_ON_ERROR(testreplace2d_I_with_I_I_I_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testreplace2d_I_with_I_I_C_fgUINT8);
  EXIT_ON_ERROR(testreplace2d_I_with_I_I_C_fgUINT16);
  EXIT_ON_ERROR(testreplace2d_I_with_I_I_C_fgUINT32);
  EXIT_ON_ERROR(testreplace2d_I_with_I_I_C_fgINT8);
  EXIT_ON_ERROR(testreplace2d_I_with_I_I_C_fgINT16);
  EXIT_ON_ERROR(testreplace2d_I_with_I_I_C_fgINT32);
  EXIT_ON_ERROR(testreplace2d_I_with_I_I_C_fgFLOAT32);
  EXIT_ON_ERROR(testreplace2d_I_with_I_I_C_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testreplace2d_I_with_I_C_I_fgUINT8);
  EXIT_ON_ERROR(testreplace2d_I_with_I_C_I_fgUINT16);
  EXIT_ON_ERROR(testreplace2d_I_with_I_C_I_fgUINT32);
  EXIT_ON_ERROR(testreplace2d_I_with_I_C_I_fgINT8);
  EXIT_ON_ERROR(testreplace2d_I_with_I_C_I_fgINT16);
  EXIT_ON_ERROR(testreplace2d_I_with_I_C_I_fgINT32);
  EXIT_ON_ERROR(testreplace2d_I_with_I_C_I_fgFLOAT32);
  EXIT_ON_ERROR(testreplace2d_I_with_I_C_I_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testreplace2d_I_with_I_C_C_fgUINT8);
  EXIT_ON_ERROR(testreplace2d_I_with_I_C_C_fgUINT16);
  EXIT_ON_ERROR(testreplace2d_I_with_I_C_C_fgUINT32);
  EXIT_ON_ERROR(testreplace2d_I_with_I_C_C_fgINT8);
  EXIT_ON_ERROR(testreplace2d_I_with_I_C_C_fgINT16);
  EXIT_ON_ERROR(testreplace2d_I_with_I_C_C_fgINT32);
  EXIT_ON_ERROR(testreplace2d_I_with_I_C_C_fgFLOAT32);
  EXIT_ON_ERROR(testreplace2d_I_with_I_C_C_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testreplace2d_I_with_C_I_I_fgUINT8);
  EXIT_ON_ERROR(testreplace2d_I_with_C_I_I_fgUINT16);
  EXIT_ON_ERROR(testreplace2d_I_with_C_I_I_fgUINT32);
  EXIT_ON_ERROR(testreplace2d_I_with_C_I_I_fgINT8);
  EXIT_ON_ERROR(testreplace2d_I_with_C_I_I_fgINT16);
  EXIT_ON_ERROR(testreplace2d_I_with_C_I_I_fgINT32);
  EXIT_ON_ERROR(testreplace2d_I_with_C_I_I_fgFLOAT32);
  EXIT_ON_ERROR(testreplace2d_I_with_C_I_I_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testreplace2d_I_with_C_I_C_fgUINT8);
  EXIT_ON_ERROR(testreplace2d_I_with_C_I_C_fgUINT16);
  EXIT_ON_ERROR(testreplace2d_I_with_C_I_C_fgUINT32);
  EXIT_ON_ERROR(testreplace2d_I_with_C_I_C_fgINT8);
  EXIT_ON_ERROR(testreplace2d_I_with_C_I_C_fgINT16);
  EXIT_ON_ERROR(testreplace2d_I_with_C_I_C_fgINT32);
  EXIT_ON_ERROR(testreplace2d_I_with_C_I_C_fgFLOAT32);
  EXIT_ON_ERROR(testreplace2d_I_with_C_I_C_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testreplace2d_I_with_C_C_I_fgUINT8);
  EXIT_ON_ERROR(testreplace2d_I_with_C_C_I_fgUINT16);
  EXIT_ON_ERROR(testreplace2d_I_with_C_C_I_fgUINT32);
  EXIT_ON_ERROR(testreplace2d_I_with_C_C_I_fgINT8);
  EXIT_ON_ERROR(testreplace2d_I_with_C_C_I_fgINT16);
  EXIT_ON_ERROR(testreplace2d_I_with_C_C_I_fgINT32);
  EXIT_ON_ERROR(testreplace2d_I_with_C_C_I_fgFLOAT32);
  EXIT_ON_ERROR(testreplace2d_I_with_C_C_I_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testreplace2d_I_with_C_C_C_fgUINT8);
  EXIT_ON_ERROR(testreplace2d_I_with_C_C_C_fgUINT16);
  EXIT_ON_ERROR(testreplace2d_I_with_C_C_C_fgUINT32);
  EXIT_ON_ERROR(testreplace2d_I_with_C_C_C_fgINT8);
  EXIT_ON_ERROR(testreplace2d_I_with_C_C_C_fgINT16);
  EXIT_ON_ERROR(testreplace2d_I_with_C_C_C_fgINT32);
  EXIT_ON_ERROR(testreplace2d_I_with_C_C_C_fgFLOAT32);
  EXIT_ON_ERROR(testreplace2d_I_with_C_C_C_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testreplace2d_spp2_I_with_C_C_C_fgUINT8);
  EXIT_ON_ERROR(testreplace2d_spp2_I_with_C_C_C_fgUINT16);
  EXIT_ON_ERROR(testreplace2d_spp2_I_with_C_C_C_fgUINT32);
  EXIT_ON_ERROR(testreplace2d_spp2_I_with_C_C_C_fgINT8);
  EXIT_ON_ERROR(testreplace2d_spp2_I_with_C_C_C_fgINT16);
  EXIT_ON_ERROR(testreplace2d_spp2_I_with_C_C_C_fgINT32);
  EXIT_ON_ERROR(testreplace2d_spp2_I_with_C_C_C_fgFLOAT32);
  EXIT_ON_ERROR(testreplace2d_spp2_I_with_C_C_C_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testcopy_fgUINT8);
  EXIT_ON_ERROR(testcopy_fgUINT16);
  EXIT_ON_ERROR(testcopy_fgUINT32);
  EXIT_ON_ERROR(testcopy_fgINT8);
  EXIT_ON_ERROR(testcopy_fgINT16);
  EXIT_ON_ERROR(testcopy_fgINT32);
  EXIT_ON_ERROR(testcopy_fgFLOAT32);
  EXIT_ON_ERROR(testcopy_fgFLOAT64);

  EXIT_ON_ERROR(testcopybit_fgUINT8);
  EXIT_ON_ERROR(testcopybit_fgUINT16);
  EXIT_ON_ERROR(testcopybit_fgUINT32);
  EXIT_ON_ERROR(testcopybit_fgINT8);
  EXIT_ON_ERROR(testcopybit_fgINT16);
  EXIT_ON_ERROR(testcopybit_fgINT32);
  EXIT_ON_ERROR(testcopybit_fgFLOAT32);
  EXIT_ON_ERROR(testcopybit_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testnhb_extract1d_fgBIT);
  EXIT_ON_ERROR(testnhb_extract1d_fgUINT8);
  EXIT_ON_ERROR(testnhb_extract1d_fgUINT16);
  EXIT_ON_ERROR(testnhb_extract1d_fgUINT32);
  EXIT_ON_ERROR(testnhb_extract1d_fgINT8);
  EXIT_ON_ERROR(testnhb_extract1d_fgINT16);
  EXIT_ON_ERROR(testnhb_extract1d_fgINT32);
  EXIT_ON_ERROR(testnhb_extract1d_fgFLOAT32);
  EXIT_ON_ERROR(testnhb_extract1d_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testnhb_extract2d_fgBIT);
  EXIT_ON_ERROR(testnhb_extract2d_fgUINT8);
  EXIT_ON_ERROR(testnhb_extract2d_fgUINT16);
  EXIT_ON_ERROR(testnhb_extract2d_fgUINT32);
  EXIT_ON_ERROR(testnhb_extract2d_fgINT8);
  EXIT_ON_ERROR(testnhb_extract2d_fgINT16);
  EXIT_ON_ERROR(testnhb_extract2d_fgINT32);
  EXIT_ON_ERROR(testnhb_extract2d_fgFLOAT32);
  EXIT_ON_ERROR(testnhb_extract2d_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testnhb_extract2d_spp3_fgBIT);
  EXIT_ON_ERROR(testnhb_extract2d_spp3_fgUINT8);
  EXIT_ON_ERROR(testnhb_extract2d_spp3_fgUINT16);
  EXIT_ON_ERROR(testnhb_extract2d_spp3_fgUINT32);
  EXIT_ON_ERROR(testnhb_extract2d_spp3_fgINT8);
  EXIT_ON_ERROR(testnhb_extract2d_spp3_fgINT16);
  EXIT_ON_ERROR(testnhb_extract2d_spp3_fgINT32);
  EXIT_ON_ERROR(testnhb_extract2d_spp3_fgFLOAT32);
  EXIT_ON_ERROR(testnhb_extract2d_spp3_fgFLOAT64);
  printf("\n");


  EXIT_ON_ERROR(testset_data1d_vector_fgBIT);
  EXIT_ON_ERROR(testset_data1d_vector_fgUINT8);
  EXIT_ON_ERROR(testset_data1d_vector_fgUINT16);
  EXIT_ON_ERROR(testset_data1d_vector_fgUINT32);
  EXIT_ON_ERROR(testset_data1d_vector_fgINT8);
  EXIT_ON_ERROR(testset_data1d_vector_fgINT16);
  EXIT_ON_ERROR(testset_data1d_vector_fgINT32);
  EXIT_ON_ERROR(testset_data1d_vector_fgFLOAT32);
  EXIT_ON_ERROR(testset_data1d_vector_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testget_data1d_vector_fgBIT);
  EXIT_ON_ERROR(testget_data1d_vector_fgUINT8);
  EXIT_ON_ERROR(testget_data1d_vector_fgUINT16);
  EXIT_ON_ERROR(testget_data1d_vector_fgUINT32);
  EXIT_ON_ERROR(testget_data1d_vector_fgINT8);
  EXIT_ON_ERROR(testget_data1d_vector_fgINT16);
  EXIT_ON_ERROR(testget_data1d_vector_fgINT32);
  EXIT_ON_ERROR(testget_data1d_vector_fgFLOAT32);
  EXIT_ON_ERROR(testget_data1d_vector_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testexport1d_data_ptr_fgBIT);
  EXIT_ON_ERROR(testexport1d_data_ptr_fgUINT8);
  EXIT_ON_ERROR(testexport1d_data_ptr_fgUINT16);
  EXIT_ON_ERROR(testexport1d_data_ptr_fgUINT32);
  EXIT_ON_ERROR(testexport1d_data_ptr_fgINT8);
  EXIT_ON_ERROR(testexport1d_data_ptr_fgINT16);
  EXIT_ON_ERROR(testexport1d_data_ptr_fgINT32);
  EXIT_ON_ERROR(testexport1d_data_ptr_fgFLOAT32);
  EXIT_ON_ERROR(testexport1d_data_ptr_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testimport1d_data_ptr_fgBIT);
  EXIT_ON_ERROR(testimport1d_data_ptr_fgUINT8);
  EXIT_ON_ERROR(testimport1d_data_ptr_fgUINT16);
  EXIT_ON_ERROR(testimport1d_data_ptr_fgUINT32);
  EXIT_ON_ERROR(testimport1d_data_ptr_fgINT8);
  EXIT_ON_ERROR(testimport1d_data_ptr_fgINT16);
  EXIT_ON_ERROR(testimport1d_data_ptr_fgINT32);
  EXIT_ON_ERROR(testimport1d_data_ptr_fgFLOAT32);
  EXIT_ON_ERROR(testimport1d_data_ptr_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testclear1d_all_fgBIT);
  EXIT_ON_ERROR(testclear1d_all_fgUINT8);
  EXIT_ON_ERROR(testclear1d_all_fgUINT16);
  EXIT_ON_ERROR(testclear1d_all_fgUINT32);
  EXIT_ON_ERROR(testclear1d_all_fgINT8);
  EXIT_ON_ERROR(testclear1d_all_fgINT16);
  EXIT_ON_ERROR(testclear1d_all_fgINT32);
  EXIT_ON_ERROR(testclear1d_all_fgFLOAT32);
  EXIT_ON_ERROR(testclear1d_all_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testset_data2d_vector_fgBIT);
  EXIT_ON_ERROR(testset_data2d_vector_fgUINT8);
  EXIT_ON_ERROR(testset_data2d_vector_fgUINT16);
  EXIT_ON_ERROR(testset_data2d_vector_fgUINT32);
  EXIT_ON_ERROR(testset_data2d_vector_fgINT8);
  EXIT_ON_ERROR(testset_data2d_vector_fgINT16);
  EXIT_ON_ERROR(testset_data2d_vector_fgINT32);
  EXIT_ON_ERROR(testset_data2d_vector_fgFLOAT32);
  EXIT_ON_ERROR(testset_data2d_vector_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testget_data2d_vector_fgBIT);
  EXIT_ON_ERROR(testget_data2d_vector_fgUINT8);
  EXIT_ON_ERROR(testget_data2d_vector_fgUINT16);
  EXIT_ON_ERROR(testget_data2d_vector_fgUINT32);
  EXIT_ON_ERROR(testget_data2d_vector_fgINT8);
  EXIT_ON_ERROR(testget_data2d_vector_fgINT16);
  EXIT_ON_ERROR(testget_data2d_vector_fgINT32);
  EXIT_ON_ERROR(testget_data2d_vector_fgFLOAT32);
  EXIT_ON_ERROR(testget_data2d_vector_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testexport2d_data_ptr_fgBIT);
  EXIT_ON_ERROR(testexport2d_data_ptr_fgUINT8);
  EXIT_ON_ERROR(testexport2d_data_ptr_fgUINT16);
  EXIT_ON_ERROR(testexport2d_data_ptr_fgUINT32);
  EXIT_ON_ERROR(testexport2d_data_ptr_fgINT8);
  EXIT_ON_ERROR(testexport2d_data_ptr_fgINT16);
  EXIT_ON_ERROR(testexport2d_data_ptr_fgINT32);
  EXIT_ON_ERROR(testexport2d_data_ptr_fgFLOAT32);
  EXIT_ON_ERROR(testexport2d_data_ptr_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testimport2d_data_ptr_fgBIT);
  EXIT_ON_ERROR(testimport2d_data_ptr_fgUINT8);
  EXIT_ON_ERROR(testimport2d_data_ptr_fgUINT16);
  EXIT_ON_ERROR(testimport2d_data_ptr_fgUINT32);
  EXIT_ON_ERROR(testimport2d_data_ptr_fgINT8);
  EXIT_ON_ERROR(testimport2d_data_ptr_fgINT16);
  EXIT_ON_ERROR(testimport2d_data_ptr_fgINT32);
  EXIT_ON_ERROR(testimport2d_data_ptr_fgFLOAT32);
  EXIT_ON_ERROR(testimport2d_data_ptr_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testimport2d_spp2_data_ptr_fgBIT);
  EXIT_ON_ERROR(testimport2d_spp2_data_ptr_fgUINT8);
  EXIT_ON_ERROR(testimport2d_spp2_data_ptr_fgUINT16);
  EXIT_ON_ERROR(testimport2d_spp2_data_ptr_fgUINT32);
  EXIT_ON_ERROR(testimport2d_spp2_data_ptr_fgINT8);
  EXIT_ON_ERROR(testimport2d_spp2_data_ptr_fgINT16);
  EXIT_ON_ERROR(testimport2d_spp2_data_ptr_fgINT32);
  EXIT_ON_ERROR(testimport2d_spp2_data_ptr_fgFLOAT32);
  EXIT_ON_ERROR(testimport2d_spp2_data_ptr_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testclear2d_all_fgBIT);
  EXIT_ON_ERROR(testclear2d_all_fgUINT8);
  EXIT_ON_ERROR(testclear2d_all_fgUINT16);
  EXIT_ON_ERROR(testclear2d_all_fgUINT32);
  EXIT_ON_ERROR(testclear2d_all_fgINT8);
  EXIT_ON_ERROR(testclear2d_all_fgINT16);
  EXIT_ON_ERROR(testclear2d_all_fgINT32);
  EXIT_ON_ERROR(testclear2d_all_fgFLOAT32);
  EXIT_ON_ERROR(testclear2d_all_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(test_Shift1d_Right_fgBIT);
  EXIT_ON_ERROR(test_Shift1d_Right_fgUINT8);
  EXIT_ON_ERROR(test_Shift1d_Right_fgUINT16);
  EXIT_ON_ERROR(test_Shift1d_Right_fgUINT32);
  EXIT_ON_ERROR(test_Shift1d_Right_fgINT8);
  EXIT_ON_ERROR(test_Shift1d_Right_fgINT16);
  EXIT_ON_ERROR(test_Shift1d_Right_fgINT32);
  EXIT_ON_ERROR(test_Shift1d_Right_fgFLOAT32);
  EXIT_ON_ERROR(test_Shift1d_Right_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(test_Shift1d_Left_fgBIT);
  EXIT_ON_ERROR(test_Shift1d_Left_fgUINT8);
  EXIT_ON_ERROR(test_Shift1d_Left_fgUINT16);
  EXIT_ON_ERROR(test_Shift1d_Left_fgUINT32);
  EXIT_ON_ERROR(test_Shift1d_Left_fgINT8);
  EXIT_ON_ERROR(test_Shift1d_Left_fgINT16);
  EXIT_ON_ERROR(test_Shift1d_Left_fgINT32);
  EXIT_ON_ERROR(test_Shift1d_Left_fgFLOAT32);
  EXIT_ON_ERROR(test_Shift1d_Left_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(test_Shift1d_1_Right_fgBIT);
  EXIT_ON_ERROR(test_Shift1d_1_Right_fgUINT8);
  EXIT_ON_ERROR(test_Shift1d_1_Right_fgUINT16);
  EXIT_ON_ERROR(test_Shift1d_1_Right_fgUINT32);
  EXIT_ON_ERROR(test_Shift1d_1_Right_fgINT8);
  EXIT_ON_ERROR(test_Shift1d_1_Right_fgINT16);
  EXIT_ON_ERROR(test_Shift1d_1_Right_fgINT32);
  EXIT_ON_ERROR(test_Shift1d_1_Right_fgFLOAT32);
  EXIT_ON_ERROR(test_Shift1d_1_Right_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(test_Shift1d_1_Left_fgBIT);
  EXIT_ON_ERROR(test_Shift1d_1_Left_fgUINT8);
  EXIT_ON_ERROR(test_Shift1d_1_Left_fgUINT16);
  EXIT_ON_ERROR(test_Shift1d_1_Left_fgUINT32);
  EXIT_ON_ERROR(test_Shift1d_1_Left_fgINT8);
  EXIT_ON_ERROR(test_Shift1d_1_Left_fgINT16);
  EXIT_ON_ERROR(test_Shift1d_1_Left_fgINT32);
  EXIT_ON_ERROR(test_Shift1d_1_Left_fgFLOAT32);
  EXIT_ON_ERROR(test_Shift1d_1_Left_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(test_Shift1d_spp3_Left_fgBIT);
  EXIT_ON_ERROR(test_Shift1d_spp3_Left_fgUINT8);
  EXIT_ON_ERROR(test_Shift1d_spp3_Left_fgUINT16);
  EXIT_ON_ERROR(test_Shift1d_spp3_Left_fgUINT32);
  EXIT_ON_ERROR(test_Shift1d_spp3_Left_fgINT8);
  EXIT_ON_ERROR(test_Shift1d_spp3_Left_fgINT16);
  EXIT_ON_ERROR(test_Shift1d_spp3_Left_fgINT32);
  EXIT_ON_ERROR(test_Shift1d_spp3_Left_fgFLOAT32);
  EXIT_ON_ERROR(test_Shift1d_spp3_Left_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(test_Shift1d_spp3_Right_fgBIT);
  EXIT_ON_ERROR(test_Shift1d_spp3_Right_fgUINT8);
  EXIT_ON_ERROR(test_Shift1d_spp3_Right_fgUINT16);
  EXIT_ON_ERROR(test_Shift1d_spp3_Right_fgUINT32);
  EXIT_ON_ERROR(test_Shift1d_spp3_Right_fgINT8);
  EXIT_ON_ERROR(test_Shift1d_spp3_Right_fgINT16);
  EXIT_ON_ERROR(test_Shift1d_spp3_Right_fgINT32);
  EXIT_ON_ERROR(test_Shift1d_spp3_Right_fgFLOAT32);
  EXIT_ON_ERROR(test_Shift1d_spp3_Right_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(test_Shift_Circular1d_Right_fgBIT);
  EXIT_ON_ERROR(test_Shift_Circular1d_Right_fgUINT8);
  EXIT_ON_ERROR(test_Shift_Circular1d_Right_fgUINT16);
  EXIT_ON_ERROR(test_Shift_Circular1d_Right_fgUINT32);
  EXIT_ON_ERROR(test_Shift_Circular1d_Right_fgINT8);
  EXIT_ON_ERROR(test_Shift_Circular1d_Right_fgINT16);
  EXIT_ON_ERROR(test_Shift_Circular1d_Right_fgINT32);
  EXIT_ON_ERROR(test_Shift_Circular1d_Right_fgFLOAT32);
  EXIT_ON_ERROR(test_Shift_Circular1d_Right_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(test_Shift_Circular1d_Left_fgBIT);
  EXIT_ON_ERROR(test_Shift_Circular1d_Left_fgUINT8);
  EXIT_ON_ERROR(test_Shift_Circular1d_Left_fgUINT16);
  EXIT_ON_ERROR(test_Shift_Circular1d_Left_fgUINT32);
  EXIT_ON_ERROR(test_Shift_Circular1d_Left_fgINT8);
  EXIT_ON_ERROR(test_Shift_Circular1d_Left_fgINT16);
  EXIT_ON_ERROR(test_Shift_Circular1d_Left_fgINT32);
  EXIT_ON_ERROR(test_Shift_Circular1d_Left_fgFLOAT32);
  EXIT_ON_ERROR(test_Shift_Circular1d_Left_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(test_Shift_Circular1d_spp3_Left_fgBIT);
  EXIT_ON_ERROR(test_Shift_Circular1d_spp3_Left_fgUINT8);
  EXIT_ON_ERROR(test_Shift_Circular1d_spp3_Left_fgUINT16);
  EXIT_ON_ERROR(test_Shift_Circular1d_spp3_Left_fgUINT32);
  EXIT_ON_ERROR(test_Shift_Circular1d_spp3_Left_fgINT8);
  EXIT_ON_ERROR(test_Shift_Circular1d_spp3_Left_fgINT16);
  EXIT_ON_ERROR(test_Shift_Circular1d_spp3_Left_fgINT32);
  EXIT_ON_ERROR(test_Shift_Circular1d_spp3_Left_fgFLOAT32);
  EXIT_ON_ERROR(test_Shift_Circular1d_spp3_Left_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(test_Shift_Circular1d_spp3_Right_fgBIT);
  EXIT_ON_ERROR(test_Shift_Circular1d_spp3_Right_fgUINT8);
  EXIT_ON_ERROR(test_Shift_Circular1d_spp3_Right_fgUINT16);
  EXIT_ON_ERROR(test_Shift_Circular1d_spp3_Right_fgUINT32);
  EXIT_ON_ERROR(test_Shift_Circular1d_spp3_Right_fgINT8);
  EXIT_ON_ERROR(test_Shift_Circular1d_spp3_Right_fgINT16);
  EXIT_ON_ERROR(test_Shift_Circular1d_spp3_Right_fgINT32);
  EXIT_ON_ERROR(test_Shift_Circular1d_spp3_Right_fgFLOAT32);
  EXIT_ON_ERROR(test_Shift_Circular1d_spp3_Right_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testhMirror_fgBIT);
  EXIT_ON_ERROR(testhMirror_fgUINT8);
  EXIT_ON_ERROR(testhMirror_fgUINT16);
  EXIT_ON_ERROR(testhMirror_fgUINT32);
  EXIT_ON_ERROR(testhMirror_fgINT8);
  EXIT_ON_ERROR(testhMirror_fgINT16);
  EXIT_ON_ERROR(testhMirror_fgINT32);
  EXIT_ON_ERROR(testhMirror_fgFLOAT32);
  EXIT_ON_ERROR(testhMirror_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testhMirror_spp5_fgBIT);
  EXIT_ON_ERROR(testhMirror_spp5_fgUINT8);
  EXIT_ON_ERROR(testhMirror_spp5_fgUINT16);
  EXIT_ON_ERROR(testhMirror_spp5_fgUINT32);
  EXIT_ON_ERROR(testhMirror_spp5_fgINT8);
  EXIT_ON_ERROR(testhMirror_spp5_fgINT16);
  EXIT_ON_ERROR(testhMirror_spp5_fgINT32);
  EXIT_ON_ERROR(testhMirror_spp5_fgFLOAT32);
  EXIT_ON_ERROR(testhMirror_spp5_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testvMirror_fgBIT);
  EXIT_ON_ERROR(testvMirror_fgUINT8);
  EXIT_ON_ERROR(testvMirror_fgUINT16);
  EXIT_ON_ERROR(testvMirror_fgUINT32);
  EXIT_ON_ERROR(testvMirror_fgINT8);
  EXIT_ON_ERROR(testvMirror_fgINT16);
  EXIT_ON_ERROR(testvMirror_fgINT32);
  EXIT_ON_ERROR(testvMirror_fgFLOAT32);
  EXIT_ON_ERROR(testvMirror_fgFLOAT64);
  printf("\n");

  EXIT_ON_ERROR(testvMirror_spp6_fgBIT);
  EXIT_ON_ERROR(testvMirror_spp6_fgUINT8);
  EXIT_ON_ERROR(testvMirror_spp6_fgUINT16);
  EXIT_ON_ERROR(testvMirror_spp6_fgUINT32);
  EXIT_ON_ERROR(testvMirror_spp6_fgINT8);
  EXIT_ON_ERROR(testvMirror_spp6_fgINT16);
  EXIT_ON_ERROR(testvMirror_spp6_fgINT32);
  EXIT_ON_ERROR(testvMirror_spp6_fgFLOAT32);
  EXIT_ON_ERROR(testvMirror_spp6_fgFLOAT64);
  printf("\n");



  PRINT_TEST_NUMBER(nbtest);

  return 0;
}

